  _________
 /\__    __\
 \/_/\   \_/
    \ \   \      _________    ___  _____
     \ \   \    /\   ___  \  /\  \/ __  \
      \ \   \   \ \  \  \  \ \ \   /_/\  \
       \ \   \   \ \  \  \  \ \ \  \ \ \  \
        \_\   \__ \ \  \__\  \ \ \  \ \ \  \
       /\________\ \ \________\ \ \__\ \ \__\
       \/________/  \/________/  \/__/  \/__/  v1.2
----------<by Joe Wingbermuehle 19991218>----------

>Upgrade Note
If you are updating from Ion v1.0 or Ion v1.1 please
reset the RAM before installing this version. Do this
by selecting [2nd] [+] [7] [1] [2]. You may want to
save your program before doing this.
If you do not follow these instructions, your
calculator will leak around 2k of RAM and may become
unstable.

>Background
Ion is a shell for both the TI-83 Plus and the TI-83.
It provides an efficient means for creating and using
programs on both calculators.

>Requirements
A TI-83 or TI-83 Plus.
A TI-Graph Link or equivalent.
 If you don't know what this is, you do not have
 one. See www.ti.com or some other calculator web
 site for more information.

>Installation
Send ion.8xg to your TI-83 Plus or
Send ion.83g to your TI-83.
To send to your calculator using the Graph-Link
software, select [Link|Send To|RAM] for the
TI-83 Plus or [Link|Send] for the TI-83.
Run prgmION.
Now run prgmA any time you want to run Ion. You
may delete prgmION and prgmIONZ if you like. However,
if you plan on sending Ion to someone else's
calculator, you must send those files to properly
install Ion.

>Description
Ion is an assembly language shell for the TI-83 and
the TI-83 Plus. Unlike other shells, this shell uses
a new relocation method that allows assembly language
programs to take advantage of all ROM calls, while
also allowing any program to run with less than 40
bytes of free memory. It also uses an improved
program format, which makes Ion programs smaller than
either AShell or SOS programs.
Here is a list of additional features:
	-Basic Shell Features
		-Allows any assembly language program
		 to be run with less than 40 bytes of
		 free memory.
		-Allows for modules, which allow one to
		 customize the Ion interface.
		-Automatically detects assembly language
		 programs.
		-Automatically moves programs to and
		 from Flash as needed (TI-83 Plus only).
		-Contains a built in function library.
		-Program write-back.
		-Requires little memory.
	-Interface Features
		-A graphical, easy-to-use interface.
		-Displays program name/description.
		-Displays program size/free memory.
	-Navigational Features
		-Allows for as many programs as your
		 calculator can hold!
		-Eight programs visible at a time.
	-Power Saving Features
		-Automatically powers down after a
		 minute or so of inactivity.
		-Uses little power while active.

>Keys
Run program:	[Y=] or [ENTER]
Move cursor:	[(up)] or [(down)]
Next list:	[(right)]
Previous list:	[(left)]
Exit Ion:	[MODE]
Power Down:	[ON]

>Notes
-Please read this entire file throughly before asking
 for help or submitting a bug!
-TI-83 and TI-83 Plus programs are not compatable at
 the binary level. You must send the correct program
 to your calculator if it is to work.
 TI-83 programs have the *.83p extension and
 TI-83 Plus programs have the *.8xp extension.
-Ion should say "Ion Installed!" after being run. If
 it does not, you probably do not have enough free
 memory.
-Although Ion can run programs from Flash (only on the
 TI-83 Plus, of course), it is recommended that you
 place the programs you use most often in RAM. There
 are two reasons for this: it is slower for Ion to swap
 between Flash and RAM every time a program is executed
 and it is not good for the Flash to be written to
 frequently.
-Modules must be located in RAM to run.
-If a program that is stored in Flash refuses to run
 you probably do not have enough free RAM to execute it.
 Move some stuff out of RAM to make room for the program.
-See faqaa.txt for more frequently asked questions.

>Bugs
This version of Ion should be bug-free. Nevertheless,
there is always something I overlook!
Before reporting bugs please read this document fully!
Most "bug" reports I get are easily solved if only the
user would read this document! If you do not give me
enough information to find the problem your bug report
will be ignored. The more information the better.
Please email bug reports to joewing@calc.org with a
subject of "Ion Bug Report". Thank you!

>Issues
It is unlikely that Ion will cause your calculator any
harm. However, I cannot be held responsible for any
damage to your calculator. Afterall, Ion is freeware!

>Developer Information
See iondev.txt for developer information and standards.
See libs.txt for information on the Ion library routines.

>History
Non-public releases are not documented.
Project Started: 19990623
Version 1.0 <> 19990824
	TI-83 size: 	1746 bytes (less once installed)
	TI-83Plus size: 1801 bytes (less once installed)
	-First release!
Version 1.1 <> 19991009
	TI-83 size:	1741 bytes (1392 once installed)
	TI-83Plus size:	1804 bytes (1546 once installed)
	-Fixed the bug that caused the TI-83 version to eat
	 memory if installed more than once.
	-Fixed the bug that caused the symbol table to
	 become corrupt.
	-Fixed the problem with ionFastCopy that caused the
	 screen to become garbled.
	-Now clears the graph screen on exit.
	-Fixed a bug in the TI-83 Plus version that caused
	 some crashes.
	-Fixed a bug in the TI-83 Plus version that caused
	 some programs to detect external levels incorrectly.
Version 1.2 <> 19991121
	TI-83 size:	1742 bytes (1420 once installed)
	TI-83Plus size:	1795 bytes (1571 once installed)
	NOTE: This version is not compatible with previous
	      versions! Reset the RAM before installing by
	      selecting [2nd] [+] [7] [1] [2] before
	      installing. You may want to save your
	      programs first.
	-Fixed a bug that caused some crashes.
	-Added the ability to go to the previous list.

>Credits
Thank you to the following people:
	-Dan Englender (aka Dulce) - Helped me immensely
	 with figuring out TI-83 Plus oddities. He also
	 tested Ion trillions of times.
	-Brandon Whaley (aka Red Picasso) - Gave me the
	 information I needed to create Ion.
	-You, for using Ion!
	-All the people that encouraged me to finish
	 this project.
I'm sorry if I missed anyone!

Joe Wingbermuehle
http://joewing.calc.org
